#include "include/worm.h"

const char *say[] =  		// worms carry these strings
{
    "do-not-optimize-too-soon*",
    "If it does not have to be correct, making the program efficient is easy.",
    "90% of code executes only 10% of the time!",
    "Is there a program, longer than say 1000 lines, that is correct?",
    "OS is not bug-free, the compiler is not bug-free, so is my program!",
    "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
    "98765432109876543210*",
    "Edsger-Dijkstra*",		// legendary programmers ...
    "C-A-R-Hoare*",
    "Donald-Knuth*",
    "Richard-Stallman*",
    "Linux-Torvalds*",
};

worm::worm()
{
    //ctor
}

worm::~worm()
{
    //dtor
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
 worm::worm(WORM_KIND nkind)
{
    kind = nkind;
}



/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::getStatus()
{
    return status;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
void worm::setStatus(LIFE nstatus)
{
    status = nstatus;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::getInfoColor()
{
    return info.color;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::setInfoColor()
{
    return info.color;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::getInfoCapacity()
{
    return info.capacity;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::setInfoCapacity()
{
    return info.capacity;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::getInfoFoodVal()
{
    return info.foodValue;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::setInfoFoodVal()
{
    return info.foodValue;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::getDirection()
{
    return direction;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::setDirection()
{
    return direction;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::getCharColour()
{
    return square.attr;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::setCharColour()
{
    return square.attr;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::getChar()
{
    return square.onec;
}

/** @brief (one liner)
  *
  * (documentation goes here)
  */
int worm::setChar()
{
    return square.onec;
}



/** @brief (one liner)
  *
  * (documentation goes here)
  */
void worm::setType(WORM_KIND nkind)
{
    kind = nkind;
}


